package com.itheima.reggie.test;


import java.util.Arrays;

public class test {

    public static void main(String[] args) {

        int[] x = {1, 1, 3, 4, 5, 6, 7, 8, 5, 2, 2, 1};
        System.out.println(Arrays.toString(QC(x)));

    }

    /**
     * 数组去重,有bug 如果原数组有0，则出错，因为空数组默认值为0，有没有办法让它按顺序放入新数组呢？
     * 方法一：
     * 将新数组全部填充为原数组不可能出现的数字
     * 方法二：
     * 直接对原始数组进行双重遍历，将未重复的数字放入新数组，
     *
     * @param nums
     * @return
     */
    public static int[] QC(int[] nums) {
        int[] nums2 = new int[nums.length];
        int dou = 0;
        nums2[dou] = nums[0];
        for (int i = 1; i < nums.length; i++) {
            boolean boo = false;
            for (int j = 0; j < nums2.length; j++) {
                if (nums2[j] == nums[i]) {
                    boo = true;
                }
            }
            if (!boo) {
                nums2[++dou] = nums[i];
            }
        }
        int[] result = new int[dou+1];
        for (int i = 0; i <dou+1; i++) {
            result[i] = nums2[i];
        }
        return result;
    }


    /**
     * 第二种去重，先将重复的数字找出来，
     * 然后创建新的数组，将原数组中的非重复的数字先赋值给新数组，再将重复的数字，
     * 赋值单个给新数组
     */
    public static int[] QC2(int[] nums) {
        int[] newArr = new int[nums.length];
        for (int i = 0; i < nums.length; i++) {
            for (int j = 0; j < nums.length; j++) {

            }
        }
        return newArr;
    }

}